С учетом приведенного ниже кода, как бы вы могли создать/реализовать SR.h, чтобы он выдавал правильный вывод без каких-либо звездочек в вашем решении?
Меня обманул этот вопрос. Я хотел бы узнать некоторые из разных подходов, которые люди используют для этой проблемы.
#include <cstdio>
#include "SR.h"
int main()
{
    int j = 5;
    int a[] = {10, 15};
    {
        SR x(j), y(a[0]), z(a[1]);
        j = a[0];
        a[0] = a[1];
        a[1] = j;
        printf("j = %d, a = {%d, %d}\n", j, a[0], a[1]);
    }
    printf("j = %d, a = {%d, %d}\n", j, a[0], a[1]);
}
Вывод:
j = 10, a = {15, 10}
j = 5, a = {10, 15}
Второй:
#include <cstdio>
#include "SR.h"
int main()
{
    int sum = 0;
    for (int i = 1; i < 100; i++) {
        SR ii(i);
        while (i--)
            sum += i;
    }
    printf("sum = %d\n", sum);
}
//The output is "sum = 161700".