3

重複の可能性:
>?= 演算子の意味は?

私はこの行に遭遇しました、

bot <?= fnet[v][u] ? fnet[v][u] : ( cap[u][v] - fnet[u][v] );

この<?=記号は何を意味していますか?Visual Studio 2012 は存在しないと言っていますが、それは何ですか? 多分それはいくつかの以前のバージョンにありましたか?

ありがとう


ファイル内の各文字列を読み取るPython

私はテキストファイルを持っています:

1 0 1 0 1 0

1 0 1 0 1 0

1 0 1 0 1 0

1 0 1 0 1 0

各文字列を取得して整数データ型に変換できるようにしたいのですが、コードの結果はValueError: invalid literal for int() with base 10: ''

tile_map = open('background_tiles.txt','r');

    for line in tile_map:

        for string in line:

             self.type = int(string);

データを取得して正常に変換する正しい方法は何ですか?

4

1 に答える 1

5

Visual Studio は正しく、演算子は無効になっています。それがあったのか、それとも言語拡張だったのかはわかりません。編集: 削除されたのは gcc 拡張機能でした - http://gcc.gnu.org/ml/gcc/2005-09/msg00299.html

これは条件付きの代入です。つまり、「 ifに代入するa <?= b」という意味です。baa < b

std::min代わりにandを使用できますstd::max

bot <?= fnet[v][u] ? fnet[v][u] : ( cap[u][v] - fnet[u][v] );

に翻訳されます

bot = std::min(bot, fnet[v][u] ? fnet[v][u] : (cap[u][v]-fnet[u][v]) );
于 2012-11-24T23:45:20.180 に答える