Ошибка при чтении файла Sequencial в C++

jQuery ≥ 1.7

С jQuery 1.7 вперед событие API было обновлено, .bind() / .unbind() все еще доступны для назад совместимости, но предпочтительный метод использует на () / прочь () функции. Ниже теперь был бы,

$('#myimage').click(function() { return false; }); // Adds another click event
$('#myimage').off('click');
$('#myimage').on('click.mynamespace', function() { /* Do stuff */ });
$('#myimage').off('click.mynamespace');

jQuery < 1.7

В Вашем примере кода Вы просто добавляете другое событие щелчка к изображению, не переопределяя предыдущее:

$('#myimage').click(function() { return false; }); // Adds another click event

Оба события щелчка будут тогда запущены.

, Поскольку люди сказали, что можно использовать, развязывают для удаления всех событий щелчка:

$('#myimage').unbind('click');

, Если Вы хотите добавить единственное событие и затем удалить его (не удаляя других, которые, возможно, были добавлены) тогда можно использовать пространство имен события:

$('#myimage').bind('click.mynamespace', function() { /* Do stuff */ });

и удалить просто Ваше событие:

$('#myimage').unbind('click.mynamespace');
5
задан DaveR 17 July 2009 в 23:32
поделиться

2 ответа

Либо используйте:

g++ ReadClientFile.cpp

, либо

gcc ReadClientFile.cpp -lstdc++

Я предполагаю, что gcc по умолчанию не связывается со стандартной библиотекой C ++. Как правило, для компиляции программ на C ++ следует использовать g ++.

15
ответ дан 18 December 2019 в 09:52
поделиться

Код скомпилирован без ошибок на GCC версии 4.3. Но это не сработало с файлом с более чем одной записью клиента. Также будут проблемы с именами клиентов, содержащими пробелы. Поэтому я внес несколько простых изменений в код, чтобы он работал с CSV.

// ReadClientFile.cpp
// Lendo e imprimindo um arquivo sequêncial.

#include <iostream>
#include <fstream> // Fluxo de arquivo
#include <iomanip>
#include <string>
#include <cstdlib>
using namespace std;

static void outputLine(int, const string, 
               double); // Protótipo

int main()
{
  // Construtor ifstream, abre o arquivo
  ifstream inClientFile("Clients.dat", ios::in);

  // Fecha o programa se ifstream não pode abrir o arquivo
  if (!inClientFile)
    {
      cerr << "File could not be opened" << endl;
      return 1;
    } // Fim do if

  int account;
  string name;
  double balance;
  const int buffSize = 80;
  char* buffer = new char[buffSize + 1];

  cout << left << setw( 10 ) << "Account" << setw( 13 )
       << "Name" << "Balance" << endl << fixed << showpoint;

  // Exibe cada registro do arquivo
  while (!inClientFile.eof())
    {
      inClientFile.getline(buffer, buffSize, ',');
      account = atoi(buffer);
      inClientFile.getline(buffer, buffSize, ',');
      name = buffer;
      inClientFile.getline(buffer, buffSize, ',');
      balance = atof(buffer);
      outputLine(account, name, balance);
    }

  return 0; // Destrutor ifstream fecha o arquivo
} // Fim de main

// Exibe um registro do arquivo
void outputLine(int account, const string name, double balance)
{
  cout << left << setw( 10 ) << account << setw( 13 ) << name
       << setw( 7 ) << setprecision( 2 ) << right << balance << endl;
} // Fim da funcão outputLine 

Это содержимое файла данных, который я использовал для тестирования:

A1080, Dave Thomas, 5600, A1081, Nancy George, 9000, A1082, Jacob B, 1900

Код все еще не является надежным, поскольку мы не заботимся об исключениях, повреждении файла данных и т. Д.

2
ответ дан 18 December 2019 в 09:52
поделиться
Другие вопросы по тегам:

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