Изменение вывода C++, не изменяя основное () [закрытая] функция

Вы можете попробовать использовать комбинацию медиазапросов и правила !important. Предполагая, что 768px является вашей мобильной точкой останова:

@media(max-width:768px){
  #catalogueCarousel {
    width: 100% !important;
  }
}

В качестве альтернативы вы можете использовать jQuery:

function resizeCarousel() {
  if($window.width() < 768) {
    $('#catalogueCarousel')
      .removeClass('w-50')
      .addClass('w-100');
  } else {
    $('#catalogueCarousel')
      .removeClass('w-100')
      .addClass('w-50');
  }
}
resizeCarousel();
$window.resize(resizeCarousel);
9
задан Bill the Lizard 16 September 2012 в 15:50
поделиться

14 ответов

#include <iostream>
class tclass
{
  public:
    void operator <<(char *s)
    {
          std::cout<<"I"<<s<<"You"<<std::endl;
    }
};

tclass cout;

int main()
{
  cout<<"love";
}
38
ответ дан 4 December 2019 в 05:50
поделиться

Не столь изящный как litb's, но это работает

#include <iostream> 
#include <cstdio> 
#include <sstream> 

#define cout     printf("I love you\n"); std::ostringstream os; os 

int main() 
{ 
    cout << "love"; 
}

Конечно, Вы не должны использовать a stringstream, Вы могли использовать любой класс с operator<<.

13
ответ дан 4 December 2019 в 05:50
поделиться

Хорошо, фиксируя Вашу основную функцию и iostream.h... Это - путь

#include <iostream>

// to make sure std::cout is constructed when we use it
// before main was called - thxx to @chappar
std::ios_base::Init stream_initializer;

struct caller {
    caller() { std::cout << "I "; }
    ~caller() { std::cout << " You"; }
} c;

// ohh well, for the br0ken main function
using std::cout;

int main()
{
    cout<<"Love";
}

Я полагал, что должен объяснить, почему это работает. Код определяет структуру, которая имеет конструктора и деструктор. Конструктор выполняется, когда Вы создаете объект структуры, и деструктор выполняется, когда тот объект уничтожается. Теперь, в конце определения структуры, можно поместить операторы объявления, которые будут иметь тип caller.

Так, что мы сделали выше, создает названный объект c который создается (и вызванный конструктор) в программе запускаются - даже, прежде чем основное будет выполнено. И когда программа завершается, объект уничтожается, и деструктор выполняется. Промежуточный, main печатная "Любовь".

Тот шаблон на самом деле очень хорошо известен термином RAII который обычно требует некоторого ресурса в конструкторе и выпускает его снова в вызове деструктора.

90
ответ дан 4 December 2019 в 05:50
поделиться

Не столь изящный как litb's, но альтернатива:

#include <iostream>
using namespace std;

int foo()
{
    cout << "I Love You" << endl;
    return cout.rdbuf(0);
}
int i = foo();

int main()
{
    cout << "Love" << endl;
}
9
ответ дан 4 December 2019 в 05:50
поделиться

Как это:

#include <iostream>
int main() {
   std::cout << "I Love You" << std::endl;
   return 0;
}

/*
#include<iostream.h>
void main()
{
    cout<<"Love";
}
*/

Таким образом, Вы ничего не изменили в main.:-p

8
ответ дан 4 December 2019 в 05:50
поделиться

Тот код не имеет никакого станд. использования, но так или иначе он потребовал бы записи Вашей собственной обертки вокруг суда и удаления станд. использования, если бы было и замена использованием mystd, где обертка определяется.

2
ответ дан 4 December 2019 в 05:50
поделиться

Я предполагаю, что Вы могли записать оператор <<, который добавил "меня" прежде и "Вы" после текущей производительности.

1
ответ дан 4 December 2019 в 05:50
поделиться

Разве Ваше основное не должно функционировать, возвращают интервал? Вы или испытываете необходимость, чтобы изменить метод или записать другую программу, что эти каналы в, но это - большая часть окольного пути, чтобы поменять простую струну...

0
ответ дан 4 December 2019 в 05:50
поделиться

Урок - то, что C++ может выполнить код прежде и после основной () через статических конструкторов/деструкторы, например, код, отправленный litb.

0
ответ дан 4 December 2019 в 05:50
поделиться

Необходимо изменить основное, или вызывающий другую функцию или путем изменения текста. С тех пор main() основной вывод Вашей программы

-1
ответ дан 4 December 2019 в 05:50
поделиться

Можно ли быть немного более точными?

Вы хотите, чтобы вывод той части кода был, "Я люблю Вас" вместо "Любви"?

Править: Я не думаю, что Вы не можете, не изменяя по крайней мере одну строку кода в основном (). Можно или изменить из суда <<"Любовь" в суд <<, "Я люблю Вас" или просто добавляю функцию что выводы что определенная строка.

-1
ответ дан 4 December 2019 в 05:50
поделиться

Предполагая, что это было присвоение класса, я готов поспорить, что идея заключалась в том, что вы могли бы переписать iostream.h , поскольку C ++ не рассматривает его как особый (для некоторых определений «особого»).

0
ответ дан 4 December 2019 в 05:50
поделиться

Мы тоже можем сделать это так:

#include <iostream>
#include <cstdlib>
using namespace std;

int fnfoo(int inum){
   cout << "I Love You" << endl;
   return (exit(0),inum);
}

int dummy = fnfoo(5);

int main()
{
   cout << "Love" << endl;
}

Просто и отлично работает;)

5
ответ дан 4 December 2019 в 05:50
поделиться

Я действительно удивлен, что никто не предложил #define "Love" "Я люблю тебя" ... :)

-1
ответ дан 4 December 2019 в 05:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: